package br.com.mtech.ctrlliberty.mobile;

import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Locale;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.SmsMessage;
import android.telephony.TelephonyManager;
import android.util.Log;
import br.com.mtech.ctrlliberty.mobile.entity.MensagemVO;
import br.com.mtech.ctrlliberty.mobile.entity.TipoLigacaoEnum;
import br.com.mtech.ctrlliberty.mobile.util.JsonUtil;
import br.com.mtech.ctrlliberty.mobile.util.MobileUtil;

public class ReceberSms extends BroadcastReceiver {
	
	private static final String CATEGORIA = "CTRLLIBERTY";

	@Override
	public void onReceive(Context context, Intent intent) {
		Log.i(CATEGORIA, ">" + intent.getAction());
		TelephonyManager tm = (TelephonyManager) context.getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);

		Sms sms = new Sms();
		SmsMessage msg = sms.receberMensagem(intent);
		
		Log.i(CATEGORIA, "> recuperou mensagem : " + msg.getDisplayMessageBody());
	 
		String strNumeroCel = MobileUtil.recuperarNumeroCel(tm);
		
		Log.i(CATEGORIA, "> recuperou numeroCel " + strNumeroCel);

		
		List<MensagemVO> listaMensagem = new ArrayList<MensagemVO>();
		MensagemVO vo = new MensagemVO("011", Long.parseLong(msg.getDisplayOriginatingAddress()), msg.getDisplayMessageBody(), Calendar.getInstance(new Locale("PT", "br")).getTime(), TipoLigacaoEnum.RECEBIDA, null );
		listaMensagem.add(vo);
				
		AndroidWebService.sincronizarDados("011", 91239266l, "MensagemVO", JsonUtil.fromMensagem(listaMensagem));

	}
}
